package com.zhongkun.datahome.service.res.sku;

import com.zhongkun.datahome.service.constant.SkuStatusEnum;
import com.zhongkun.datahome.service.domain.Sku;
import com.zhongkun.datahome.service.res.CommonFileVo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.List;
import java.util.Objects;

/**
 * @Author: lifengsheng
 * @Date: 2025/4/15 11:24
 * @Desc
 */
@Data
public class SkuVo extends Sku {
    // @ApiModelProperty("商品类目名称")
    // private String categoryName;

    // @ApiModelProperty("单位名称")
    // private String unitName;

    @ApiModelProperty("头图")
    private String headPicUrl;

    @ApiModelProperty("图片列表")
    private List<CommonFileVo> commonPics;

    public String getStatusDesc() {
        return SkuStatusEnum.getDesc(this.getStatus());
    }

    public static SkuVo convert(Sku sku, List<CommonFileVo> commonPics) {
        SkuVo skuVo = convert(sku);
        skuVo.setCommonPics(commonPics);
        return skuVo;
    }

    public static SkuVo convert(Sku sku) {
        SkuVo skuVo = new SkuVo();
        skuVo.setId(sku.getId());
        skuVo.setSkuName(sku.getSkuName());
        skuVo.setBrandName(sku.getBrandName());
        skuVo.setUnit(sku.getUnit());
        skuVo.setSpecification(sku.getSpecification());
        skuVo.setSource(sku.getSource());
        skuVo.setRemark(sku.getRemark());
        skuVo.setStatus(sku.getStatus());
        skuVo.setCategory(sku.getCategory());

        skuVo.setCreateBy(sku.getCreateBy());
        skuVo.setCreateTime(sku.getCreateTime());
        skuVo.setUpdateBy(sku.getUpdateBy());
        skuVo.setUpdateTime(sku.getUpdateTime());
        skuVo.setTenantId(sku.getTenantId());
        return skuVo;
    }
}
